Termination w.r.t. Q of the following Term Rewriting System could be proven:
Q restricted rewrite system:
The TRS R consists of the following rules:
active(f(f(a))) → mark(f(g(f(a))))
active(f(X)) → f(active(X))
f(mark(X)) → mark(f(X))
proper(f(X)) → f(proper(X))
proper(a) → ok(a)
proper(g(X)) → g(proper(X))
f(ok(X)) → ok(f(X))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
Q is empty.
↳ QTRS
↳ RFCMatchBoundsTRSProof
Q restricted rewrite system:
The TRS R consists of the following rules:
active(f(f(a))) → mark(f(g(f(a))))
active(f(X)) → f(active(X))
f(mark(X)) → mark(f(X))
proper(f(X)) → f(proper(X))
proper(a) → ok(a)
proper(g(X)) → g(proper(X))
f(ok(X)) → ok(f(X))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
Q is empty.
Termination of the TRS R could be shown with a Match Bound [6,7] of 7. This implies Q-termination of R.
The following rules were used to construct the certificate:
active(f(f(a))) → mark(f(g(f(a))))
active(f(X)) → f(active(X))
f(mark(X)) → mark(f(X))
proper(f(X)) → f(proper(X))
proper(a) → ok(a)
proper(g(X)) → g(proper(X))
f(ok(X)) → ok(f(X))
g(ok(X)) → ok(g(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))
The certificate found is represented by the following graph.
The certificate consists of the following enumerated nodes:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 27, 28, 26, 29, 30, 31, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63
Node 1 is start node and node 2 is final node.
Those nodes are connect through the following edges:
- 1 to 3 labelled ok_1(0), mark_1(0)
- 1 to 4 labelled mark_1(0)
- 1 to 8 labelled top_1(0), g_1(0), f_1(0)
- 1 to 9 labelled f_1(0), top_1(0)
- 1 to 7 labelled ok_1(0)
- 1 to 18 labelled mark_1(1)
- 1 to 19 labelled top_1(1)
- 1 to 20 labelled ok_1(1)
- 1 to 31 labelled top_1(2)
- 1 to 57 labelled top_1(3)
- 2 to 2 labelled #_1(0)
- 3 to 2 labelled g_1(0), f_1(0)
- 3 to 12 labelled ok_1(1), mark_1(1)
- 4 to 5 labelled f_1(0)
- 5 to 6 labelled g_1(0)
- 6 to 7 labelled f_1(0)
- 7 to 2 labelled a(0)
- 8 to 2 labelled proper_1(0)
- 8 to 10 labelled g_1(1), f_1(1)
- 8 to 11 labelled ok_1(1)
- 8 to 22 labelled ok_1(2)
- 9 to 2 labelled active_1(0)
- 9 to 13 labelled mark_1(1)
- 9 to 17 labelled f_1(1)
- 9 to 21 labelled mark_1(2)
- 10 to 2 labelled proper_1(1)
- 10 to 10 labelled g_1(1), f_1(1)
- 10 to 11 labelled ok_1(1)
- 10 to 22 labelled ok_1(2)
- 11 to 2 labelled a(1)
- 12 to 2 labelled g_1(1), f_1(1)
- 12 to 12 labelled ok_1(1), mark_1(1)
- 13 to 14 labelled f_1(1)
- 14 to 15 labelled g_1(1)
- 15 to 16 labelled f_1(1)
- 16 to 2 labelled a(1)
- 17 to 2 labelled active_1(1)
- 17 to 13 labelled mark_1(1)
- 17 to 17 labelled f_1(1)
- 17 to 21 labelled mark_1(2)
- 18 to 13 labelled f_1(1)
- 18 to 21 labelled f_1(1)
- 19 to 13 labelled proper_1(1)
- 19 to 11 labelled active_1(1)
- 19 to 23 labelled f_1(2)
- 19 to 21 labelled proper_1(1)
- 19 to 22 labelled active_1(1)
- 19 to 26 labelled mark_1(2)
- 19 to 44 labelled mark_1(3)
- 19 to 47 labelled ok_1(3)
- 20 to 11 labelled f_1(1), g_1(1)
- 20 to 22 labelled f_1(1), g_1(1)
- 21 to 13 labelled f_1(2)
- 21 to 21 labelled f_1(2)
- 22 to 11 labelled f_1(2), g_1(2)
- 22 to 22 labelled f_1(2), g_1(2)
- 23 to 14 labelled proper_1(2)
- 23 to 24 labelled g_1(2)
- 23 to 13 labelled proper_1(2)
- 23 to 21 labelled proper_1(2)
- 23 to 11 labelled active_1(2)
- 23 to 22 labelled active_1(2)
- 23 to 30 labelled f_1(3)
- 23 to 23 labelled f_1(2)
- 23 to 26 labelled mark_1(2)
- 23 to 44 labelled mark_1(3)
- 23 to 45 labelled ok_1(3)
- 23 to 47 labelled ok_1(3)
- 23 to 48 labelled mark_1(4)
- 23 to 50 labelled ok_1(4)
- 24 to 15 labelled proper_1(2)
- 24 to 25 labelled f_1(2)
- 24 to 43 labelled ok_1(3)
- 25 to 16 labelled proper_1(2)
- 25 to 29 labelled ok_1(2)
- 27 to 28 labelled g_1(2)
- 28 to 29 labelled f_1(2)
- 26 to 27 labelled f_1(2)
- 29 to 2 labelled a(2)
- 30 to 22 labelled active_1(3)
- 30 to 11 labelled active_1(3)
- 30 to 13 labelled proper_1(3)
- 30 to 21 labelled proper_1(3)
- 30 to 30 labelled f_1(3)
- 30 to 23 labelled f_1(2)
- 30 to 26 labelled mark_1(2)
- 30 to 44 labelled mark_1(3)
- 30 to 47 labelled ok_1(3)
- 30 to 48 labelled mark_1(4)
- 30 to 50 labelled ok_1(4)
- 31 to 26 labelled proper_1(2)
- 31 to 42 labelled f_1(3)
- 31 to 44 labelled proper_1(2)
- 31 to 47 labelled active_1(2)
- 31 to 56 labelled ok_1(4)
- 42 to 27 labelled proper_1(3)
- 42 to 46 labelled g_1(3)
- 42 to 44 labelled proper_1(3)
- 42 to 26 labelled proper_1(3)
- 42 to 52 labelled f_1(4)
- 42 to 42 labelled f_1(3)
- 42 to 47 labelled active_1(3)
- 42 to 45 labelled active_1(3)
- 42 to 48 labelled proper_1(3)
- 42 to 54 labelled ok_1(4)
- 42 to 50 labelled active_1(3)
- 42 to 56 labelled ok_1(4)
- 42 to 58 labelled ok_1(5)
- 43 to 29 labelled f_1(3)
- 44 to 26 labelled f_1(3)
- 44 to 44 labelled f_1(3)
- 44 to 48 labelled f_1(3)
- 45 to 43 labelled g_1(3)
- 46 to 28 labelled proper_1(3)
- 46 to 49 labelled f_1(3)
- 46 to 53 labelled ok_1(4)
- 47 to 45 labelled f_1(3)
- 47 to 47 labelled f_1(3)
- 47 to 50 labelled f_1(3)
- 48 to 44 labelled f_1(4)
- 48 to 48 labelled f_1(4)
- 49 to 29 labelled proper_1(3)
- 49 to 51 labelled ok_1(3)
- 50 to 47 labelled f_1(4)
- 50 to 50 labelled f_1(4)
- 51 to 2 labelled a(3)
- 52 to 44 labelled proper_1(4)
- 52 to 26 labelled proper_1(4)
- 52 to 48 labelled proper_1(4)
- 52 to 52 labelled f_1(4)
- 52 to 42 labelled f_1(3)
- 52 to 55 labelled f_1(5)
- 52 to 50 labelled active_1(4)
- 52 to 47 labelled active_1(4)
- 52 to 45 labelled active_1(4)
- 52 to 56 labelled ok_1(4)
- 52 to 58 labelled ok_1(5)
- 52 to 59 labelled ok_1(6)
- 53 to 51 labelled f_1(4)
- 54 to 53 labelled g_1(4)
- 55 to 44 labelled proper_1(5)
- 55 to 48 labelled proper_1(5)
- 55 to 55 labelled f_1(5)
- 55 to 47 labelled active_1(5)
- 55 to 50 labelled active_1(5)
- 55 to 52 labelled f_1(4)
- 55 to 58 labelled ok_1(5)
- 55 to 59 labelled ok_1(6)
- 56 to 54 labelled f_1(4)
- 56 to 56 labelled f_1(4)
- 56 to 58 labelled f_1(4)
- 57 to 56 labelled active_1(3)
- 57 to 60 labelled f_1(4)
- 58 to 56 labelled f_1(5)
- 58 to 58 labelled f_1(5)
- 58 to 59 labelled f_1(5)
- 59 to 58 labelled f_1(6)
- 59 to 59 labelled f_1(6)
- 60 to 54 labelled active_1(4)
- 60 to 56 labelled active_1(4)
- 60 to 61 labelled f_1(5)
- 60 to 58 labelled active_1(4)
- 61 to 54 labelled active_1(5)
- 61 to 56 labelled active_1(5)
- 61 to 58 labelled active_1(5)
- 61 to 62 labelled f_1(6)
- 61 to 59 labelled active_1(5)
- 61 to 61 labelled f_1(5)
- 62 to 56 labelled active_1(6)
- 62 to 58 labelled active_1(6)
- 62 to 59 labelled active_1(6)
- 62 to 63 labelled f_1(7)
- 62 to 62 labelled f_1(6)
- 62 to 61 labelled f_1(5)
- 63 to 58 labelled active_1(7)
- 63 to 59 labelled active_1(7)
- 63 to 63 labelled f_1(7)
- 63 to 62 labelled f_1(6)